IA-32
IA-32, chiamata a volte i386 è il set di istruzioni per il microprocessore prodotto da Intel.Il termine fu coniato per distinguere il set di istruzioni per le CPU compatibili con il processore Intel 80386 da quelli per serie incompatibili come Itanium. Il set IA-32 viene implementato in tutte le CPU della grande famiglia x86 successive al 80386, ovvero quelle a 32 bit. I programmi che sono utilizzati con uno di questi processori possono girare in modalità protetta, usare memoria maggiore di 640K, disporre di memoria virtuale e ambiente multitasking. Inoltre essi possono accedere ad uno spazio di memoria lineare di circa 4 GB.
Ogni generazione di CPU aggiunse diverse caratteristiche a questo set:
- 80386: poteva disporre di un coprocessore matematico (Intel 80387) che permetteva calcoli in virgola mobile via hardware.
- Pentium MMX: introdusse un set di istruzioni detto MMX che poteva essere usato per ottimizzare il software multimediale
- Pentium III: venne aggiunto il set di istruzioni SSE
- Pentium 4: venne aggiunto il set SSE2
registri dati
- eax - accumulator register
- ebx - base register
- ecx - counter register
- edx - data register
- ebp - base pointer
- esi - source index
- edi - destination index
- esp - stack pointer
Questo è il set completo di istruzioni del processore 8086 e 8088, ma molte, se non tutte, sono disponibili nella modalità a 32 bit. Esse operano su registri e valori a 32 bit, al contrario delle loro controparti a 16 bit. Esiste un'altra modalità nella quale il processore agisce completamente a 32 bit (modalità protetta). Essa fu introdotta con il processore 386 (era supportata anche dal 286, ma esso usava registri a 16 bit). La nuova architettura Intel IA-64 non è direttamente compatibile con le istruzioni IA-32.